<template>
	<view class="custom-section">
		<view class="custom-section-header">
			<view class="section-header-title">{{ sectionProps.title }}</view>
			<view class="section-header-right">
				<slot name="right" />
				<uni-icons v-if="sectionProps.showArrow" color="#c3c3c5" size="16" type="forward" />
			</view>
		</view>
		<slot />
	</view>
</template>

<script setup lang="ts">
	const sectionProps = withDefaults(
		defineProps<{
			title?: string
			showArrow?: boolean
		}>(),
		{
			title: '',
			showArrow: false,
		}
	)
</script>

<style lang="scss">
	.custom-section {
		padding: 40rpx 30rpx 30rpx;
		margin-bottom: 20rpx;
		background-color: #fff;
		border-radius: 20rpx;
	}

	.custom-section-header {
		display: flex;
		justify-content: space-between;
		line-height: 1;
		margin-bottom: 20rpx;
	}

	.section-header-title {
		font-size: 32rpx;
		color: #333;
	}

	.section-header-right {
		display: flex;
		align-items: center;
		font-size: 26rpx;
		color: #c3c3c5;
	}
</style>
